/*
 * ISerialization.h
 *
 */

#ifndef ISERIALIZATION_H_
#define ISERIALIZATION_H_

#include "../Types.h"

class ISerializer {
public:
	virtual ~ISerializer() {}
	virtual void serializeString(const String& value) = 0;
	virtual void serializeUnsignedLongInt(BigInt value) = 0;
	virtual void serializeChar(char value) = 0;
};

class IUnserializer {
public:
	virtual ~IUnserializer() {}
	virtual BigInt unserializeUnsignedLongInt() = 0;
	virtual String unserializeString() = 0;
	virtual char unserializeChar() = 0;
};


#endif /* ISERIALIZATION_H_ */
